//Basic tandem promoter library



//Properties 

Property Name(txt);

Property Sequence(txt);

Property RepressedBy(txt); 

Property Represses(txt);



//Part Types 
PartType Promoter(Name,RepressedBy,Sequence); 



/*------
 * PROMOTERS
 *------*/

Promoter pTet("pTet","tetR","TCCCTATCAGTGATAGAGATTGACATCCCTATCAGTGATAGAGATACTGAGCACATCAGCAGGACGCACTGACCGAA");

Promoter pLac("pLac","lacI","AAAATTTATCAAAAAGAGTGTTGACTTGTGAGCGGATAACAATGATACTTAGATTCAATTGTGAGCGGATAACAATTTCACACA");

Promoter pBad("pBad","araC","AAGAAACCAATTGTCCATATTGCATCAGACATTGCCGTCACTGCGTCTTTTACTGGCTCTTCTCGCTAACCAAACCGGTAACCCCGCTTATTAAAAGCATTCTGTAACAAAGCGGGACCAAAGCCATGACAAAAACGCGTAACAAAAGTGTCTATAATCACGGCAGAAAAGTCCACATTGATTATTTGCACGGCGTCACACTTTGCTATGCCATAGCATTTTTATCCATAAGATTAGCGGATCCTACCTGACGCTTTTTATCGCAACTCTCTACTGTTTCTCCATA");


//Structural Rules 


//Device 

Device D1(Promoter, Promoter);



//Content Rules


Rule R(ON D1: 
  
	all_forward and

	NOT pBad MORETHAN 1 and
     
	NOT pLac MORETHAN 1 and
     
	NOT pTet MORETHAN 1 
);



/*--- 
 * ENUMERATE RULE-COMPLIANT 
 * TANDEM PROMOTERS
 *---*/  


list1=product(D1);
